Information processing device, information processing method, and non-transitory computer readable medium

ABSTRACT

An information processing device includes a controller that controls a notification of a linkage function corresponding to plural selected files. In a further modification of the invention, the controller may control the notification of the linkage function corresponding to formats of the selected files. When the plural files having different formats are selected, the controller may control the notification of the linkage function corresponding to the formats of the selected files.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of and claims the priority benefit ofU.S. application Ser. No. 16/019,557, filed on Jun. 27, 2018, nowallowed. The prior U.S. application Ser. No. 16/019,557 is based on andclaims priority under 35 USC 119 from Japanese Patent Application No.2017-174224 filed Sep. 11, 2017. The entirety of the above-mentionedpatent application is hereby incorporated by reference herein and made apart of this specification.

BACKGROUND Technical Field

The present invention relates to an information processing device, aninformation processing method, and a non-transitory computer readablemedium.

SUMMARY

According to an aspect of the invention, an information processingdevice includes a controller that controls a notification of a linkagefunction corresponding to plural selected files.

BRIEF DESCRIPTION OF THE DRAWINGS

Exemplary embodiments of the present invention will be described indetail based on the following figures, wherein:

FIG. 1 is a block diagram illustrating a terminal device according to anexemplary embodiment of the invention;

FIG. 2 is a view illustrating an example of a linkage functionmanagement table;

FIG. 3 is a view illustrating an example of a screen;

FIG. 4 is a view illustrating an example of a screen;

FIG. 5 is a view illustrating an example of a screen;

FIG. 6 is a view illustrating an example of a screen;

FIG. 7 is a view illustrating an example of a linkage functionmanagement table according to Modification 1;

FIG. 8 is a view illustrating an example of a screen;

FIG. 9 is a view illustrating an example of a screen;

FIG. 10 is a view illustrating an example of a screen;

FIG. 11 is a view illustrating an example of a screen;

FIG. 12 is a view illustrating an example of a screen;

FIG. 13 is a view illustrating an example of a screen;

FIG. 14 is a view illustrating an example of a document;

FIG. 15 is a view illustrating an example of a document;

FIG. 16 is a view illustrating an example of a document;

FIG. 17 is a view illustrating an example of an image; and

FIG. 18 is a view illustrating an example of a document.

DETAILED DESCRIPTION

Referring to FIG. 1, a terminal device which is an informationprocessing device according to an exemplary embodiment of the inventionwill be described. FIG. 1 illustrates an example of the terminal deviceaccording to the present exemplary embodiment. A terminal device 10 is adevice such as a personal computer (PC), a tablet PC, a smart phone, ora mobile phone. In addition, the terminal device 10 may be a wearableterminal (e.g., a wristwatch type terminal, a wristband type terminal,an eyeglass type terminal, a ring type terminal, a contact lens typeterminal, an intracorporeal implanting type terminal, or a hearableterminal). Hereinafter, the configuration of the terminal device 10 willbe described in detail.

A communication unit 12 is a communication interface and has a functionof transmitting data to another device and a function of receiving datafrom another device. The communication unit 12 may be a communicationinterface having a wireless communication function or a communicationinterface having a wired communication function. For example, thecommunication unit 12 is compatible with one or plural types ofcommunication methods and may communicate with a communication partneraccording to a communication method suitable for the communicationpartner (e.g., a communication method compatible with the communicationpartner). The communication method is, for example, an infraredcommunication, a visible light communication, a Wi-Fi (registeredtrademark) communication, or a proximity wireless communication (e.g., anear field communication (NFC)). As for the proximity wirelesscommunication, for example, Felica (registered trademark), Bluetooth(registered trademark), or a radio frequency identifier (RFID) is used.In addition, another type of wireless communication may be used as theproximity wireless communication. The communication unit 12 may switch acommunication method or a frequency band according to, for example, acommunication partner or a surrounding environment.

A storage unit 14 is a storage device such as a hard disk or a memory(e.g., an SSD). The storage unit 14 stores, for example, linkagefunction management information 16, various types of files (data),various types of programs (e.g., an operating system (OS) andapplication software), and information indicating an address of anotherdevice. These pieces of information may be stored in separate storagedevices or in a single storage device.

The linkage function management information 16 is information formanaging a linkage function executable by linking plural functions toeach other. One or plural linkage functions are implemented by linkingplural functions to each other. The linkage function is a functionimplemented by linking plural pieces of software to each other. Inaddition, the linkage function may be a function implemented by linkinga function that a device as hardware has and a function implemented bysoftware to each other, or a function implemented by linking pluraldevices to each other. In addition, each device is, for example, animage forming device having an image forming function, a PC, a tabletPC, a smart phone, a mobile phone, a robot (e.g., a humanoid robot or ananimal (other than human) type robot), a projector, a display devicesuch as a liquid crystal display, a recording device, a playback device,an image capturing device such as a camera, a refrigerator, a ricecooker, a microwave oven, a coffee maker, a vacuum cleaner, a washingmachine, an air conditioner, a lighting device, a watch, a surveillancecamera, an automobile, a motorcycle, an aircraft (e.g., an unmannedaircraft (so-called, drone)), a game device, or various sensing devices(e.g., a temperature sensor, a humidity sensor, a voltage sensor, or acurrent sensor). Each device may be a device that outputs an output to auser (e.g., an image forming device or a PC) or a device that outputs nooutput to the user (e.g., a sensing device). In addition, all of pluraldevices executing a linkage function may output outputs to the user.Some of the devices may output outputs to the user, and the otherdevices may not output outputs to the user. All the devices may notoutput an output to the user. The concept of the devices may include allgeneral kinds of devices. For example, the devices according to thepresent exemplary embodiment may also include an information device, avideo device, an audio device, and other devices. In addition, when adevice having plural output functions (a device that outputs an outputto a user and that has plural output functions) and a sensing devicewhich does not have an output function (a device that outputs no outputto the user) are linked to each other, the linkage function managementinformation 16 may include information indicating a combination of thespecific sensing device and a specific one of the plural outputfunctions. Accordingly, an output function to be used in combinationwith the specific sensing device is specified from among the pluraloutput functions.

The linkage function will be described in more detail. The linkagefunction is a function to be executed on plural files (data) when theuser selects the plural files. For example, each file is associated withsoftware (application) for executing a process on the file. The linkagefunction is implemented by linking applications respectively associatedwith plural files selected by the user.

The files are, for example, a document file, an image file, a videofile, a spreadsheet file, a presentation file, a graphic (drawing) file,and an audio file.

The document file is a file having a document format and is configuredby character strings or other pieces of information. The document filemay contain images, tables, or figures as other pieces of information.The document format is, for example, a text format or a document format.The document file corresponds to, for example, data having a text format(e.g., data appended with a character string “.txt” as an extension) ordata having a document format (e.g., data appended with a characterstring“.doc” or “.docx” as an extension).

The image file is a file having an image format. The image file may beimage data having a raster format or image data having a vector format.The image format is, for example, a JPEG format, a BMP (bitmap) format,a PDF format, a GIF format, a TIFF format, or a PICT format. The imagefile corresponds to, for example, data having a JPEG format (dataappended with a character string “.jpeg” as an extension), data having aBMP format (data appended with a character string “.bmp” as anextension), data having a PDF format (data appended with a characterstring “.pdf” as an extension), data having a GIF format (data appendedwith a character string “.gif” as an extension), data having a TIFFformat (data appended with a character string “.tiff” as an extension),data having a PNG format (data appended with a character string “.png”as an extension), or data having a PICT format (data appended with acharacter string “.pict” as an extension). In addition, image datahaving a format other than the formats described above may be used asthe image file according to the present exemplary embodiment.

The video file is a file having a video format. The video format is, forexample, an AVI format, an MP4 format, an MOV format, an MPEG2-TSformat, an MPEG2-PS format, a WMV format, or an FLV format. The videofile corresponds to, for example, data having an AVI format (dataappended with a character string “.avi” as an extension), data having anMP4 format (data appended with a character string “.mp4” as anextension), data having an MOV format (data appended with a characterstring “.mov” as an extension), data having an MPEG2-TS format (dataappended with a character string “.m2ts” as an extension), data havingan MPEG2-PS format (data appended with a character string “.mpeg” as anextension), data having a WMV format (data appended with a characterstring “.wmv” as an extension), or data having an FLV format (dataappended with a character string “.flv” as an extension). In addition,video data having a format other than the formats described above may beused as the video file according to the present exemplary embodiment.

The spreadsheet file is a file having a table format and is configuredby tables, graphs, or other pieces of information. The spreadsheet filemay contain character strings, images, or figures as other pieces ofinformation. For example, the spreadsheet file is data appended with acharacter string “.csv,” “.xls” or “.xlsx” as an extension.

The presentation file is a file having a presentation sheet format. Forexample, the presentation file corresponds to data appended with acharacter string “.ppt” or “.pptx” as an extension. The presentationfile is configured by, for example, character strings, images (stillimages or video), figures, and voice.

The graphic file is a file having a graphic (drawing) format. Thegraphic file is a file created by, for example, graphic generatingsoftware (e.g., two-dimensional or three-dimensional CAD). For example,the graphic file corresponds to data having a DXF format (data appendedwith a character string “.dxf” as an extension) or data having a DWGformat (data appended with a character string “.dwg” as an extension).In addition, data appended with a character string “.vsd” or “.vsdx” asan extension may be treated as the graphic file.

The audio file is a file having an audio format. The audio format is,for example, an uncompressed audio format (e.g., a WAV format, an AIFFformat, or a BWF format), a lossy compressed audio format (e.g., an mp3format, an AAC format, or a WMA format), or a lossless compressed audioformat (e.g., a TAK format or an FLAC format). For example, the audiofile corresponds to data having an uncompressed audio format (dataappended with, for example, a character string “.wav” as an extension),data having a lossy compressed audio format (data appended with, forexample, a character string “.mp3” as an extension), or data having anuncompressed audio format (data appended with, for example, a characterstring “.tak” as an extension).

In the present exemplary embodiment, a linkage function is set for eachfile format (attribute), and the linkage function management information16 is, for example, information indicating an association betweeninformation indicating a combination of plural file formats andinformation indicating a linkage function (linkage functioninformation). The linkage function information is, for example, alinkage function ID and a linkage function name. The file format is, forexample, the above-described document format, image format, videoformat, table format, sheet format, graphic format, or audio format. Byreferring to the linkage function management information 16, a linkagefunction associated with a combination of plural file formats isspecified (identified).

For example, when a function to be used for a linkage function isupdated (e.g., when software for implementing the function is updated),the linkage function is updated according to the updating of thefunction, and the linkage function management information 16 is alsoupdated accordingly. As a result, a linkage function by plural functionswhich cannot be linked to each other prior to the updating may becomeusable after the updating, or in the meantime, a linkage function whichis usable prior to the updating may become unusable after the updating.The linkage function information indicating the linkage function whichbecomes usable after the updating is registered in the linkage functionmanagement information 16, and the linkage function informationindicating the linkage function which becomes unusable after theupdating is deleted from the linkage function management information 16or registered as unusable information. The terminal device 10 may updatethe linkage function management information 16 at any timing,periodically, or at a timing designated by, for example, the user. Forexample, when software for an updating is installed in the terminaldevice 10, a function is updated. The updating may be performed byusing, for example, the Internet. In addition, when new software isinstalled in the terminal device 10, a usable linkage function is added,and the linkage function management information 16 is also updatedaccordingly.

The linkage function may be a function implemented by linking pluraldifferent functions (e.g., different pieces of software) to each otheror a function implemented by linking identical functions (e.g.,identical pieces of software) to each other. The linkage function may bea function which is unusable prior to the linkage. The function which isunusable prior to the linkage may be a function which becomes usable bylinking identical functions to each other or by combining differentfunctions with each other. For example, when a document creatingfunction (document creating software) and an image displaying function(image displaying software (e.g., an image viewer)) are linked to eachother, a function of inserting (attaching) an image into a document or afunction of superimposing a document (a character string or a text) onan image is implemented as a linkage function. That is, when thedocument creating function and the image displaying function are linkedto each other, an image inserting function or a text superimposingfunction is implemented.

The concept of the linkage function may include a coalescing functionexecutable as a new function by combining plural functions with eachother. For example, when plural displaying functions are combined witheach other, an extended displaying function may be implemented as thecoalescing function. In addition, when plural capturing functions arecombined with each other, a capturing area extension function may beimplemented as the coalescing function. In addition, when a callfunction and a translation function are combined with each other, atranslated call function (a function of translating a phoneconversation) may be implemented as the coalescing function. Asdescribed above, the concept of the linkage function may include afunction which may be implemented by linking identical types offunctions to each other and a function which may be implemented bylinking different types of functions to each other.

A linkage function managed by the linkage function managementinformation 16 may be a function executable by pieces of softwareinstalled in the terminal device 10, a function executable by pieces ofsoftware installed in an external device (e.g., the server or anotherterminal device), or a function executable by software installed in theterminal device 10 and software installed in an external device.

In addition, as another example of the linkage function managementinformation 16, information indicating a combination of plural functions(plural pieces of software), and information indicating a linkagefunction executable by linking the plural functions to each other(linkage function information) may be associated with each other.

The storage unit 14 may store usable function management information.The usable function management information is information for managing afunction usable by each user. The usable function management informationindicates, for example, an association between information foridentifying a user (user identification information) and functioninformation (including linkage function information) indicating afunction usable by the user. The function usable by the user is, forexample, a function provided to the user for free or a functionpurchased by the user. The user identification information is, forexample, user account information such as a user ID or a name. Afunction usable by each user is specified (identified) by referring tothe usable function management information. The usable functionmanagement information is updated, for example, each time a function isprovided to the user free of charge or for a fee.

A UI unit 18 is a user interface unit and includes a display unit and anoperation unit. The display unit is, for example, a display device suchas a liquid crystal display. The operation unit is, for example, aninput device such as a touch panel or a keyboard. In addition, the UIunit 18 may be a user interface serving as both the display unit and theoperation unit (e.g., a touch type display or a device of which displayelectronically displays a keyboard or the like).

A controller 20 controls the operation of each unit of the terminaldevice 10. The controller 20 controls, for example, a communication bythe communication unit 12 and a display of various pieces of informationon the display unit of the UI unit 18. Further, the controller 20includes a specifying unit 22.

The specifying unit 22 has a function of specifying a linkage functionassociated with a combination of formats (file formats) of plural filesselected by the user in the linkage function management information 16.Accordingly, a linkage function executable when plural files areselected is specified.

The controller 20 controls to notify (inform) the linkage functionspecified by the specifying unit 22. The controller 20 may display theinformation indicating the linkage function on the UI unit 18 or issuethe information indicating the linkage function as voice information byusing a speaker or the like. In addition, the controller 20 may controlthe execution of the linkage function. In addition, the user may selectthe files through the screen of the display unit of the UI unit 18 or byvoice. For example, when an image associated with a file is displayed onthe screen of the UI unit 18, the user may select the file by selectingthe image on the screen. As another example, the user may select a fileby voice, regardless of whether the image associated with the file isdisplayed on the screen of the UI unit 18. For example, when the userspeaks a file name by voice, the voice is collected by a soundcollecting unit such as a microphone, and voice information indicatingthe file name is input to the terminal device 10. The specifying unit 22determines that the file having the file name is selected by the user,and specifies a linkage function. As described above, the operation toselect a file and the notification of a linkage function may beperformed either by a display on the screen or by voice. The display onthe screen and the voice may be combined with each other. For example,the user may select an image associated with a file on the screen so asto select a file, and information indicating a linkage function may bedisplayed on the screen. As another example, a file may be selected inthe manner that the user selects an image associated with the file onthe screen, and information indicating a linkage function may be outputby voice. As yet another example, a file may be selected in the mannerthat a file name is input as voice information to the terminal device10, and information indicating a linkage function may be displayed onthe screen. As yet another example, a file may be selected in the mannerthat a file name is input as voice information to the terminal device10, and information indicating a linkage function may be output byvoice.

When the function usable by the user is managed, the specifying unit 22may receive the user identification information and specify a functionassociated with the user identification information in the usablefunction management information stored in the storage unit 14. Forexample, the specifying unit 22 receives identification information ofthe user who is logging into the terminal device 10, and specifies afunction associated with the user identification information in theusable function management information. Further, the specifying unit 22receives information indicating a file format of each of plural filesselected by the user, and specifies a linkage function associated withthe combination of the plural file formats in the linkage functionmanagement information 16. A linkage function that is the functionassociated with the user identification information in the usablefunction management information and that is associated with thecombination of the file formats of the respective plural files selectedby the user is a linkage function usable by the user.

In addition, the linkage function management information 16 may bestored in an external device (e.g., a server) other than the terminaldevice 10. In this case, the linkage function management information 16may not be stored in the terminal device 10. In addition, the specifyingunit 22 may be provided in an external device. In this case, thespecifying unit 22 may not be provided in the terminal device 10. Thatis, the management of a linkage function or the process of specifying alinkage function based on file formats may be performed by the terminaldevice 10 or an external device. When the specifying process isperformed by an external device, the result of the process (e.g.,information indicating a specified linkage function) is transmitted fromthe external device to the terminal device 10 and displayed on the UIunit 18.

Hereinafter, the terminal device 10 will be described in more detail.

The linkage function management information 16 will be described indetail with reference to FIG. 2. FIG. 2 illustrates an example of alinkage function management table which is the linkage functionmanagement information 16. In the linkage function management table, forexample, information indicating a combination of plural file formats andinformation indicating a linkage function (linkage function information)are associated with each other. For example, when the user selectsplural files by using the UI unit 18, the specifying unit 22 specifies alinkage function associated with a combination of file formats of therespective plural files in the linkage function management table. Forexample, the controller 20 displays the information on the linkagefunction (e.g., linkage function information or linkage functionexplanation information) on the UI unit 18. In addition, while FIG. 2represents a combination of two file formats, an association between acombination of three or more file formats and a linkage function may beregistered in the linkage function management table.

Hereinafter, each file format illustrated in FIG. 2 will be described.

In FIG. 2, the “document format” is a text format (with an extension of“.txt”) or a document format (with an extension of “.doc” or “.docx”).The “table format” is a format with an extension expressed as, forexample, “.csv” or “.xls.” The “image format” is a format with anextension expressed as, for example, “.jpeg” or “.pdf.” The “videoformat” is a format with an extension expressed as, for example, “.avi”or “.mpeg.” The “sheet format” is a format with an extension expressedas, for example, “.ppt.” While FIG. 2 does not illustrate the graphicformat or the audio format, an association between a combination of fileformats including the graphic format and the audio format and a linkagefunction may be registered in the linkage function management table. Inaddition, an association between a combination of file formats otherthan the file formats illustrated in FIG. 2 and a linkage function maybe defined and registered in the linkage function management table.

Hereinafter, each linkage function illustrated in FIG. 2 will bedescribed. When the user selects a document file A and a spreadsheetfile B, a “function of inserting a table into a document” and a“function of inserting a document into a table” which are associatedwith the combination of the document format and the table format arespecified as linkage functions. The “function of inserting a table intoa document” is a function of inserting the table represented by thespreadsheet file B into the document represented by the document file A.The “function of inserting a document into a table” is a function ofinserting the document represented by the document file A into the tablerepresented by the spreadsheet file B.

When the user selects the document file A and an image file C, a“function of inserting an image into a document” and a “function ofsuperimposing a document on an image” which are associated with thecombination of the document format and the image format are specified aslinkage functions. The “function of inserting an image into a document”is a function of inserting the image represented by the image file Cinto the document represented by the document file A. The “function ofsuperimposing a document on an image” is a function of superimposing thedocument represented by the document file A on the image represented bythe image file C.

When the user selects the document file A and a video file D, a“function of inserting a video into a document” and a “function ofinserting a still image into a document” which are associated with thecombination of the document format and the video format are specified aslinkage functions. The “function of inserting a video into a document”is a function of inserting the video represented by the video file Dinto the document represented by the document file A. The “function ofinserting a still image into a document” is a function of inserting oneor plural frames (still images) included in the video file D into thedocument represented by the document file A. For example, when thedocument file A is a document file not compatible with a video, that is,a file into which a video cannot be inserted and when the “function ofinserting a still image into a document” is executed, one or pluralframes (still images) included in the video file D are inserted into thedocument represented by the document file A.

Plural files having the same file format may be selected by the user.For example, when the user selects document files A1 and A2, a “functionof integrating documents” which is associated with the combination ofthe document formats is specified as a linkage function. The “functionof integrating documents” is a function of integrating the documentsrepresented by the document files A1 and A2 with each other (e.g.,combining the two documents with each other), and generates a newdocument file A3 while saving or removing the document files A1 and A2.

When the user selects spreadsheet files B1 and B2, a “function ofintegrating tables” which is associated with the combination of thetable formats is specified as a linkage function. The “function ofintegrating tables” is a function of integrating the tables representedby the spreadsheet files B1 and B2 with each other (e.g., combining thetwo tables with each other), and generates a new spreadsheet file B3while saving or removing the spreadsheet files B1 and B2.

When the user selects video files D1 and D2, a “function of integratingvideos” which is associated with the combination of the video formats isspecified as a linkage function. The “function of integrating videos” isa function of integrating the videos represented by the video files D1and D2 with each other (e.g., combining the two videos with each other),and generates a new video file D3 while saving or removing the videofiles D1 and D2.

In addition, when the user selects a presentation file E and thedocument file A, a “function of inserting a document into a presentationsheet” which is associated with the combination of the sheet format andthe document format is specified as a linkage function. The “function ofinserting a document into a presentation sheet” is a function ofinserting the document represented by the document file A into the sheetrepresented by the presentation file E.

Hereinafter, the operation of the terminal device 10 will be describedin detail.

FIG. 3 illustrates an example of a screen displayed on the UI unit 18 ofthe terminal device 10. A screen 24 displays images (e.g., icons)associated with various files or images (e.g., icons) associated withvarious pieces of software.

In the example illustrated in FIG. 3, the screen 24 displays an image 26associated with the document file A and an image 28 associated with theimage file C. When the user selects the images 26 and 28 on the screen24, the document file A and the image file C are selected as files to belinked.

For example, when the user connects the images 26 and 28 to each otheron the screen 24 as indicated by an arrow 30, the specifying unit 22identifies the document file A associated with the image 26 and theimage file C associated with the image 28 as files to be linked.Further, the specifying unit 22 identifies the file format of thedocument file A based on the extension of the document file A (e.g., theextension associated with the document file A as attribute informationof the document file A). Similarly, the specifying unit 22 identifiesthe file format of the image file C based on the extension of the imagefile C (e.g., the extension associated with the image file C asattribute information of the image file C). In addition, the extensionmay be included in a file name. When the extension of the document fileA corresponds to an extension representing the document format such as“.txt” or “.docx,” the specifying unit 22 identifies that the fileformat of the document file A is the document format. When the extensionof the image file C corresponds to an extension representing the imageformat such as “.jpeg,” the specifying unit 22 identifies that the fileformat of the image file C is the image format. Then, the specifyingunit 22 specifies the linkage functions associated with the combinationof the document format and the image format (the “function of insertingan image into a document” and the “function of superimposing a documenton an image”) in the linkage function management table illustrated inFIG. 2. In addition, the user may select the files by voice. The sameapplies to exemplary embodiments which will be described later.

For example, when the user traces over plural images (the images 26 and28 in the example described above) (e.g., touches and traces overimages) with a pointer (e.g., the user's finger, a pen, or a stylus) onthe screen 24, the plural images are connected to each other. Thecontroller 20 detects that the pointer touches the screen 24 and detectsthe movement of the pointer on the screen 24. In addition, an order ofdesignating the images 26 and 28 and an order of connecting the images26 and 28 to each other may be opposite to the direction indicated bythe arrow 30.

When the linkage functions are specified by the specifying unit 22 asdescribed above, the controller 20 displays the information indicatingthe specified linkage functions on the UI unit 18. FIG. 4 illustrates anexample of the display. The controller 20 causes the display unit of theUI unit 18 to display a screen 32 and displays the informationindicating the linkage functions specified by the specifying unit 22 onthe screen 32. In the example described above, the informationindicating the “function of inserting an image into a document” and theinformation indicating the “function of superimposing a document on animage” are displayed as linkage functions on the screen 32. In addition,the information indicating the linkage functions may be issued as voiceinformation. The same applies to exemplary embodiments which will bedescribed later.

When the user designates a linkage function and gives an executioninstruction on the screen 32, the controller 20 executes the designatedlinkage function. For example, when the user gives an instruction toexecute the “function of inserting an image into a document,” thecontroller 20 inserts the image represented by the image file C into thedocument represented by the document file A. In addition, the user maygive the instruction to execute the linkage function by voice. The sameapplies to exemplary embodiments which will be described later.

More specifically, the controller 20 activates a document applicationand an image application. The document application is software (program)having a function of creating, editing, and displaying a file having thedocument format. The image application is software (program) having afunction of creating, editing, and displaying a file having the imageformat. In addition, the document application may be associated with thedocument file A in advance, and the image application may be associatedwith the image file C in advance. The controller 20 copies the image ofthe image file C by using a function that the image application has, andpastes the image into the document represented by the document file A byusing a function that the document application has. Accordingly, thedocument into which the image is inserted is generated. In addition, thecontroller 20 may extract a portion image representing a specificportion from the image represented by the image file C by a functionthat the image application has, and paste the portion image into thedocument. An area where the image is pasted in the document may be apredetermined area, an area designated by the user, or an area presumedto be written with a character string related to the image. For example,the controller 20 presumes or searches for a character string expressinga feature portion represented in the image, and presumes that, in thedocument, an area in which a character string having the same or similarmeaning to the searched character string is written is an area in whichthe character string related to the image is written. In addition, thearea may be presumed by another method.

Similarly, when the user gives an instruction to execute the “functionof superimposing a document on an image,” the entire documentrepresented by the document file A or a part of the document representedby the document file A is copied by the function that the documentapplication has, and the copied document or parts are superimposed onthe image represented by the image file C. The part to be copied fromthe document may be defined in advance or designated by the user. Inaddition, a portion of the image where the document is to besuperimposed may be defined in advance or designated by the user.

The controller 20 may generate a new file by executing a linkagefunction. In this case, the plural files themselves selected as objectsto be linked are not edited. For example, when the document file A andthe image file C are selected as files to be linked, and an instructionto execute the “function of inserting an image into a document” isgiven, the controller 20 generates a new document file AC by pasting theimage represented by the image file C into the document represented bythe document file A. In this case, as illustrated in FIG. 5, thecontroller 20 generates a new image 34 (e.g., an icon) associated withthe document file AC and displays the image 34 on the screen 24. In thiscase, the document file A and the image file C themselves are notedited, and the images 26 and 28 are displayed on the screen 24.

Similarly, when an instruction to execute the “function of superimposinga document on an image” is given, the controller 20 generates a newimage file CA by superimposing the entire document represented by thedocument file A or a part of the document represented by the documentfile A on the image represented by the image file C, and generates a newimage associated with the image file CA. The new image is displayed onthe screen 24. In this case as well, the document file A and the imagefile C themselves are not edited, and the images 26 and 28 are displayedon the screen 24.

As another example, the controller 20 may edit (including, for example,a process) the files themselves selected as objects to be linked,without generating a new file, when executing a linkage function.Referring to the example described above, the controller 20 pastes theimage represented by the image file C into the document represented bythe document file A, and saves the document file in which the pasting ofthe image is reflected, as the document file A. In this case, thedocument file A is updated.

Hereinafter, another example of the operation will be described withreference to FIG. 6. FIG. 6 illustrates the screen 24. The screen 24displays the images 26 and 28 as in the example illustrated in FIG. 3.For example, when the user moves the image 26 to the image 28 andsuperimposes the image 26 on the image 28 as indicated by an arrow 36 onthe screen 24, the specifying unit 22 identifies the document file Aassociated with the image 26 and the image file C associated with theimage 28 as files to be linked. Further, as described above, thespecifying unit 22 specifies the file format of each of the documentfile A and the image file C, and specifies the linkage functionsassociated with the combination of the document format and the imageformat in the linkage function management table. The informationindicating the specified linkage functions is displayed on the displayunit of the UI unit 18 as illustrated in FIG. 4. For example, the usersuperimposes an image on another image by performing the dragging anddropping operation with the pointer. In the example illustrated in FIG.6, the user drags the image 26 (indicated by a dashed line) and dropsthe image 26 at the position where the image 26 is superimposed on theimage 28. In addition, the superimposing operation may be performed by avoice instruction from the user. In a case where the user superimposesthe image 28 on the image 26 as well, the document file A and the imagefile C are identified as files to be linked, and the linkage functionsassociated with the combination of the document format and the imageformat are specified.

In the example illustrated in FIG. 6 as well, a new file (e.g., thedocument file AC) may be generated as a result of the execution of alinkage function, and an image associated with the new file (e.g., theimage 34 associated with the document file AC) may be generated. Asanother example, a file to be linked (e.g., the document file A) may beupdated as a result of the execution of a linkage function.

When plural images are superimposed on each other, the controller 20 maygenerate a new composite image representing the superimposed state ofthe plural images. The composite image is an image associated with afile reflecting the result of the execution of a linkage function. Forexample, it is assumed that the images 26 and 28 are superimposed oneach other so that a linkage function is executed. In this case, thecontroller 20 generates a new composite image representing thesuperimposed state of the images 26 and 28. The composite image may bean image representing the state where the image 26 is superimposed onthe image 28 or the image 28 is superimposed on the image 26, or animage schematically representing the state. In the example describedabove, the composite image is the image associated with the documentfile AC or the image file CA (e.g., the image 34 illustrated in FIG. 5).In addition, even though the composite image is generated, the originalimages 26 and 28 are still displayed as they are.

When the composite image is generated as described above, the controller20 displays the composite image on the screen 24. In a case where thecomposite image is superimposed on an image associated with anotherfile, the specifying unit 22 identifies the file associated with thecomposite image and the other file as files to be linked. In this case,the specifying unit 22 specifies the linkage function associated withthe combination of the file format of the file associated with thecomposite image and the file format of the other file in the linkagefunction management table illustrated in FIG. 2. The informationindicating the linkage function is displayed on the display unit of theUI unit 18.

For example, when the composite image is an image associated with thedocument file AC, the specifying unit 22 identifies that the file formatof the document file AC is the document format. In addition, when thecomposite image is an image associated with the image file CA, thespecifying unit 22 identifies that the file format of the image file CAis the image format.

By generating and displaying the composite image as described above, itis possible to provide the user with files processed as objects to belinked in a state where the files are visually and easily recognized.

A file to be linked may be selected by a method other than the methoddescribed above. For example, a file to be linked may be selected by adrawing operation such as drawing a circle on an image associated with afile. In addition, the specifying unit 22 may identify a file selectedby the user within a predetermined time limit, as a file to be linked. Astarting time point of the time limit is, for example, a time point whena first file is selected by the user. When plural images associated withplural files are connected to or superimposed on each other within thetime limit or the drawing operation is performed on the plural imageswithin the time limit, the specifying unit 22 identifies the pluralfiles as files to be linked and specifies a linkage function associatedwith the combination of the file formats of the plural files.

In addition, in order to release the linkage, the user may select filesto be released from the linkage on the screen 24, or press a linkagerelease button displayed on the screen 24.

As another example, a file to be linked may be determined in advance. Inaddition, a linkage area may be defined on the screen 24, and thespecifying unit 22 may identify a file associated with an imagedisplayed in the linkage area as a file to be linked. For example, whenthe user operates an image displayed on the screen 24 to move the imageto the linkage area, the file associated with the image is identified asa file to be linked. When the user gives an instruction to display alinkage function (e.g., when the user presses a button for giving theinstruction) in a state where plural images are displayed in the linkagearea, the specifying unit 22 identifies a linkage function associatedwith a combination of formats of plural files associated with the pluralimages. The information indicating the specified linkage function isdisplayed on the display unit of the UI unit 18. For example, when theimages 26 and 28 are moved to the linkage area and the instruction todisplay a linkage function is given, the information illustrated in FIG.4 is displayed on the screen 32.

(Modification 1)

Hereinafter, Modification 1 will be described. In Modification 1, adisplay of information on a linkage function or a linkage function to beexecuted is changed according to an order of selecting plural files.

FIG. 7 illustrates an example of a linkage function management tableaccording to Modification 1. In the linkage function management table,for example, information indicating a combination of file formats,information indicating an order of selecting files, and informationindicating a linkage function and a priority (linkage functioninformation) are associated with each other. The selecting order is anorder of selecting files and is, for example, an order of connectingimages associated with files to each other or an order of superimposingthe images on each other. For example, when the user selects pluralfiles in order, the order of the selection corresponds to the “selectingorder.” More specifically, when the user connects a first imageassociated with a first file to a second image associated with a secondfile, the selecting order of the first file is first, and the selectingorder of the second file is second. In addition, when the usersuperimposes the first image on the second image, the selecting order ofthe first file is first, and the selecting order of the second file issecond. The priority is a priority for displaying information on alinkage function.

The linkage functions associated with the combination of the documentformat and the image format are the “function of inserting an image intoa document” and the “function of superimposing a document on an image.”

For example, when the user selects the document file and the image filein this order (e.g., when the image associated with the document file isconnected to or superimposed on the image associated with the imagefile), the selecting order of the document file is first, and theselecting order of the image file is second. In this case, the “functionof superimposing a document on an image” has the “first priority,” andthe “function of inserting an image into a document” has the “secondpriority.” In this case, the information on the “function ofsuperimposing a document on an image” is displayed in preference to theinformation on the “function of inserting an image into a document.” Forexample, the information on the “function of superimposing a document onan image” is displayed at a higher rank or earlier than the informationon the “function of inserting an image into a document.”

Meanwhile, when the user selects the image file and the document file inthis order (e.g., when the image associated with the image file isconnected to or superimposed on the image associated with the documentfile), the selecting order of the image file is first, and the selectingorder of the document file is second. In this case, the “function ofinserting an image into a document” has the “first priority,” and the“function of superimposing a document on an image” has the “secondpriority.” In this case, the information on the “function of insertingan image into a document” is displayed in preference to the informationon the “function of superimposing a document on an image.” For example,the information on the “function of inserting an image into a document”is displayed at a higher rank or earlier than the information on the“function of superimposing a document on an image.”

Hereinafter, Modification 1 will be described using specific examples.FIG. 8 illustrates the screen 24. The screen 24 displays the image 26associated with the document file A and the image 28 associated with theimage file C.

For example, when the user selects the image 26 first, and then,connects the image 26 to the image 28 as indicated by an arrow 38, theselecting order of the document file A is first, and the selecting orderof the image file C is second. In this case, the “function ofsuperimposing a document on an image” has the “first priority,” and the“function of inserting an image into a document” has the “secondpriority” (see FIG. 7). FIG. 9 illustrates an example of the display inthis case. As illustrated in FIG. 9, the controller 20 displays, on thescreen 32 of the UI unit 18, the information on the “function ofsuperimposing a document on an image” in preference to (e.g., at ahigher rank than) the “function of inserting an image into a document.”

Meanwhile, when the user selects the image 28 first, and then, connectsthe image 28 to the image 26 as indicated by an arrow 40, the selectingorder of the image file C is first, and the selecting order of thedocument file A is second. In this case, the “function of inserting animage into a document” has the “first priority,” and the “function ofsuperimposing a document on an image” has the “second priority.” FIG. 10illustrates an example of the display in this case. As illustrated inFIG. 10, the controller 20 displays, on the screen 32 of the UI unit 18,the information on the “function of inserting an image into a document”in preference to (e.g., at a higher rank than) the information on the“function of superimposing a document on an image.”

When the user designates a linkage function on the screen 32 illustratedin FIG. 9 or 10 and gives an instruction to execute the linkagefunction, the designated linkage function is executed.

As described above, in Modification 1, the priority for displayinginformation on a linkage function is changed according to the order ofselecting files. The order of selecting files also serves as an order ofselecting a pasting target or a pasting destination of contentsrepresented in files (e.g., a document, image, video, table, sheet,figure, and voice). Thus, by changing the priority for displayinginformation on a linkage function according to the order of selectingfiles, information on a linkage function which is predicted to be usedby the user is preferentially displayed. That is, information on alinkage function which is predicted to be more likely to be used by theuser is preferentially displayed. For example, when the image 26associated with the document file A and the image 28 associated with theimage file C are selected in this order, a linkage function of“superimposing the document represented by the document file A on theimage represented by the image file C” is predicted to be used by theuser. In addition, when the image 28 associated with the image file Cand the image 26 associated with the document file A are selected inthis order, a linkage function of “inserting the image represented bythe image file C into the document represented by the document file A”is predicted to be used by the user. Thus, by changing the priority fordisplaying information on a linkage function according to the order ofselecting files, information on a linkage function which is predicted tomore likely to be used by the user is preferentially displayed.

(Modification 2)

Hereinafter, Modification 2 will be described. In Modification 2, thedisplay of information on a linkage function or a linkage function to beexecuted is changed according to a master-servant relationship of files.For example, a file of which represented contents themselves areeditable corresponds to a master file, and a file of which contentsthemselves are not editable corresponds to a servant file. For example,when a document itself represented in a document file is editable, thedocument file corresponds to the master file. In addition, when an imageitself represented in an image file is not editable (that is, whencontents may be superimposed on an image, but the image itself is noteditable), the image file corresponds to the servant file. Thisrelationship is similarly applied to other files. In addition, adocument file also corresponds to the servant file when the document ofthe document file is not editable, and an image file also corresponds tothe master file when the image of the image file is editable.

The specifying unit 22 may determine whether a file corresponds to themaster file or the servant file, based on a file format (i.e., anextension). For example, the specifying unit 22 may determine that afile having the document format, a file having the table format, a filehaving the sheet format, and a file having the graphic format correspondto master files, and a file having the image format, a file having thevideo format, and a file having the audio format correspond to servantfiles. In addition, the determination as to whether a file correspondsto the master file or the servant file may not be made just based on thefile formats, and may be made by individually determining files selectedas objects to be linked. For example, even a file having the imageformat may correspond to the master file when the image of the file iseditable.

Hereinafter, Modification 2 will be described using specific exampleswith reference to FIG. 11. FIG. 11 illustrates the screen 24 displayedon the UI unit 18. The screen 24 displays the image 26 associated withthe document file A and the image 28 associated with the image file C.For example, when the user designates an area for surrounding the images26 and 28 (e.g., when the user traces over the screen 24 with thepointer) as indicated by a reference numeral 42, the specifying unit 22identifies the document file A associated with the image 26 and theimage file C associated with the image 28 as files to be linked.

Further, the specifying unit 22 determines whether the document file Acorresponds to the master file or the servant file, based on theextension associated with the document file A. Similarly, the specifyingunit 22 determines whether the image file C corresponds to the masterfile or the servant file, based on the extension associated with theimage file C. For example, it is assumed that the extension of thedocument file A is “.docx,” and the extension of the image file C is“.jpeg.” In this case, since the document file A has the document formatand corresponds to an editable file, the specifying unit 22 determinesthat the document file A corresponds to the master file. Further, sincethe image file C has the image format and corresponds to an uneditablefile, the specifying unit 22 determines that the image file Ccorresponds to the servant file. In addition, the specifying unit 22 maydetermine whether the document file A and the image file C correspond toeditable files, by individually determining the document file A and theimage file C, rather than making the determination based on theextensions.

Since the document file A corresponds to the master file and the imagefile C corresponds to the servant file, the image represented in theimage file C corresponds to a content which is the pasting target, andthe document represented in the document file A corresponds to a contentwhich is the pasting destination of the image. In this case, thespecifying unit 22 specifies the “function of inserting an image into adocument” as a linkage function. The controller 20 displays theinformation on the “function of inserting an image into a document” onthe UI unit 18. When the specifying unit 22 specifies plural linkagefunctions, the controller 20 displays the information on the plurallinkage functions on the UI unit 18.

In addition, the controller 20 may display the information on thelinkage function which is specified based on the master-servantrelationship of files among the plural linkage functions registered inthe linkage function management table, on the UI unit 18 in preferenceto the information on the other linkage functions. Referring to theexample of the document file A and the image file C, the “function ofinserting an image into a document” and the “function of superimposing adocument on an image” are registered as linkage functions associatedwith the combination of the document format and the image format in thelinkage function management table (see FIG. 2). In this case, thespecifying unit 22 specifies the “function of inserting an image into adocument” which is specified based on the master-servant relationship ofthe files, as a linkage function having a “first priority,” andspecifies the “function of superimposing a document on an image” as alinkage function having a “second priority.” According to thepriorities, the controller 20 displays, on the UI unit 18, theinformation on the “function of inserting an image into a document” inpreference to (e.g., at a higher rank than) the information on the“function of superimposing a document on an image.”

In addition, when the user designates the area for surrounding theimages 26 and 28, and then, gives an instruction to display a linkagefunction on the screen 24 illustrated in FIG. 11, the controller 20 maydisplay the information on the linkage functions specified by thespecifying unit 22 on the UI unit 18. For example, when the user pressesa specific button of a mouse (e.g., right click) constituting theoperation unit of the UI unit 18, the instruction to display a linkagefunction is given.

In addition, when plural linkage functions are specified based on themaster-servant relationship of files, the controller 20 may determinepriorities of the respective linkage functions based on a history of useof each linkage function by the user, and display the information on thelinkage functions according to the priorities of the linkage functionson the UI unit 18. For example, the controller 20 preferentially displayinformation on a linkage function having a relatively high use frequencyon the UI unit 18 (e.g., at a higher rank).

In addition, when plural linkage functions are specified based on themaster-servant relationship of files, the controller 20 may determinepriorities of the respective linkage functions based on a relationshipamong the plural files selected as objects to be linked (i.e., arelationship among plural file formats), and display the information onthe linkage functions according to the priorities of the linkagefunctions on the UI unit 18. For example, the controller 20 determinesthe likelihood that each linkage function included in the plural linkagefunctions specified by the specifying unit 22 is to be used, based onthe plural file formats. The controller 20 displays information on alinkage function which is more likely to be used, preferentially (e.g.,at a higher rank) on the UI unit 18. For example, in the combination ofthe document format and the image format, it is predicted that the uselikelihood of the “function of inserting an image into a document” ishigher than that of the “function of superimposing a document on animage.” In this case, the controller 20 displays the information on the“function of inserting an image into a document” on the UI unit 18, inpreference to the “function of superimposing a document on an image.”

(Modification 3)

Hereinafter, Modification 3 will be described. In Modification 3, alinkage function is changed according to a combination of pluralportions in an image associated with a file. For example, when imagesassociated with files include portion images and a user designatesplural portion images, information on a linkage function correspondingto the plural portion images is displayed. Hereinafter, an imageassociated with a file will be referred to as an “entire image” todistinguish the image associated with the file from a “portion image.”Hereinafter, Modification 3 will be described in detail.

FIG. 12 illustrates the screen 24 displayed on the UI unit 18. Thescreen 24 displays the image 26 associated with the document file A(hereinafter, referred to as an “entire image 26”) and the image 28associated with the image file C (hereinafter, referred to as an “entireimage 28”). The entire image 26 includes, for example, portion images 26a, 26 b, 26 c, 26 d, and 26 e. In addition, the portion image 26 econstitutes a main body portion of the entire image 26. When the portionimage 26 e is selected (e.g., when the portion image 26 e is pressed) bythe user, the controller 20 recognizes that the entire image 26 isselected by the user. Similarly, the entire image 28 includes, forexample, portion images 28 a, 28 b, 28 c, 28 d, and 28 e. In addition,the portion image 28 e constitutes a main body portion of the entireimage 28. When the portion image 28 e is selected (e.g., when theportion image 28 e is pressed) by the user, the controller 20 recognizesthat the entire image 28 is selected by the user.

When the user selects plural portion images, the specifying unit 22identifies, for each of the selected portion images, a file associatedwith the entire image including the portion image as a file to belinked. Then, the specifying unit 22 specifies a linkage function thatis associated with the combination of formats of the plural filesselected as objects to be linked and that is associated with thecombination of the plural selected portion images.

For example, in the linkage function management table according toModification 3, a linkage function associated with a combination ofplural file formats and associated with a combination of plural portionimages is registered. By referring to the linkage function managementtable, the specifying unit 22 specifies a linkage function associatedwith the combination of the plural portion images selected by the user.

Specific examples in this regard will be described. For example, whenthe user selects the portion image 26 a associated with the documentfile A and the portion image 28 a associated with the image file C, thespecifying unit 22 specifies the “function of inserting an image into adocument” as a linkage function. In addition, when the user designatesthe portion image 26 b associated with the document file A and theportion image 28 b associated with the image file C, the specifying unit22 specifies the “function of superimposing a document on an image” as alinkage function. The same applies to the other portion images. Thecontroller 20 displays the information on the linkage function specifiedby the specifying unit 22 on the UI unit 18.

In addition, the user may select a portion image and an entire image. Inthis case as well, a linkage function associated with the combination ofthe portion image and the entire image is specified. For example, theuser may select an entire image including no portion image and a portionimage included in another entire image.

Hereinafter, a method of selecting a portion image will be describedwith reference to FIG. 13. FIG. 13 illustrates the screen 24 displayedon the UI unit 18. For example, when the user connects the portionimages 26 b and 28 a to each other as indicated by an arrow 44 by usingthe pointer on the screen 24 (e.g., when the user traces over betweenthe portion images 26 b and 28 a), the specifying unit 22 detects thatthe user selects the portion images 26 b and 28 a, and identifies thedocument file A and the image file C as files to be linked. Thespecifying unit 22 specifies the linkage function associated with thecombination of the portion images 26 b and 28 a, and the controller 20displays the information on the specified linkage function on the UIunit 18.

In addition, a portion image may be an image which is separable andmovable from an entire image. For example, when the user selects theportion image 26 d and moves the portion image 26 d to the position ofthe portion image 28 c (when the user drags and drops the portion image26 d) as indicated by an arrow 46, the specifying unit 22 detects thatthe user selects the portion images 26 d and 28 c, and identifies thedocument file A and the image file C as files to be linked. FIG. 13illustrates the movement of the portion image 26 d by a dashed line.Even when the portion image 26 d is moved by the user, the originalportion image 26 d of the entire image 26 is still displayed in thestate prior to the movement. The specifying unit 22 specifies thelinkage function associated with the combination of the portion images26 d and 28 c, and the controller 20 displays the information on thespecified linkage function on the UI unit 18.

According to Modification 3, since information on a linkage functioncorresponding to portion images selected by the user is displayed, thelinkage function may be changed according to portions, even when theuser selects images associated with the same file.

In addition, plural portion images may be selected from the same entireimage, and information on a linkage function associated with thecombination of the plural portion images may be displayed. In addition,when three or more portion images are selected from the same entireimage or different entire images, information on a linkage functionassociated with the three or more portion images may be displayed.

In addition, Modifications 1 and 3 may be combined with each other. Thatis, the display of information on a linkage function may be switchedaccording to an order of selecting portion images. In the exampleillustrated in FIG. 12, the display of information on different linkagefunctions may be switched such that one linkage function is displayed ina case where the portion image 26 a is selected first and then theportion image 28 a is selected, and the other linkage function isdisplayed in a case where the portion image 28 a is selected first andthen the portion image 26 a is selected.

For example, when the portion images 26 a and 28 a are selected in thisorder, the “function of superimposing a document on an image” has the“first priority,” and the “function of inserting an image into adocument” has the “second priority.” In this case, the controller 20displays the information on the “function of superimposing a document onan image” in preference to (e.g., at a higher rank than) the informationon the “function of inserting an image into a document” on the UI unit18.

Meanwhile, when the portion images 28 a and 26 a are selected in thisorder, the “function of inserting an image into a document” has the“first priority,” and the “function of superimposing a document on animage” has the “second priority.” In this case, the controller 20displays the information on the “function of inserting an image into adocument” in preference to (e.g., at a higher rank than) the informationon the “function of superimposing a document on an image” on the UI unit18.

(Modification 4)

Hereinafter, Modification 4 will be described. In Modification 4, a fileto which a content is added is changed according to the last saving date(which may be a concept including date/time) of each of plural filesselected as objects to be linked. For example, among the plural files, afile of which last saving date is the newest (latest) incorporates acontent represented by another file.

For example, as illustrated in FIG. 3, it is assumed that the userselects the document file A associated with the image 26 and the imagefile C associated with the image 28 as files to be linked. Thespecifying unit 22 identifies the last saving date of the document fileA by referring to last saving date information included in the attributeinformation of the document file A, and identifies the last saving dateof the image file C by referring to last saving date informationincluded in the attribute information of the image file C.

When the last saving date of the document file A is later than the lastsaving date of the image file C, the specifying unit 22 specifies alinkage function in which a file to which a content is added is adocument file (corresponding to a second file) and a content to be addedis an image (corresponding to information included in a first file).Such a linkage function is the “function of inserting an image into adocument.” In this case, the controller 20 displays the information onthe “function of inserting an image into a document” on the UI unit 18.In addition, the controller 20 may display the information on the“function of inserting an image into a document” in preference to theinformation on the other linkage function (e.g., the information on the“function of superimposing a document on an image”) on the UI unit 18.When the user gives an instruction to execute the “function of insertingan image into a document,” the image represented by the image file C(corresponding to the first file) is inserted into the documentrepresented by the document file A (corresponding to the second file).As a result, a new document file AC may be generated or the documentfile A may be updated.

Meanwhile, when the last saving date of the image file C is later thanthe last saving date of the document file A, the specifying unit 22specifies a linkage function in which a file to which a content is addedis an image file (corresponding to a second file) and a content to beadded is a document (corresponding to information included in a firstfile). Such a linkage function is the “function of superimposing adocument on an image.” In this case, the controller 20 displays theinformation on the “function of superimposing a document on an image” inpreference to the information on the other linkage function (e.g., theinformation on the “function of inserting an image into a document”) onthe UI unit 18. When the user gives an instruction to execute the“function of superimposing a document on an image,” the documentrepresented by the document file A (corresponding to the first file) issuperimposed on the image represented by the image file C (correspondingto the second file). As a result, a new image file CA may be generatedor the image file C may be updated.

It is predicted that a file of which last saving date is relatively new(relatively late) is highly likely to be operated and updated by theuser in the future, as compared with a file of which last saving date isrelatively early. Thus, the file of which last saving date is relativelynew incorporates the content of the other file, so that the content ofthe linkage function easily matches the user's operation intention.

(Modification 5)

Hereinafter, Modification 5 will be described. In Modification 5, thespecifying unit 22 specifies a linkage function corresponding to amethod of selecting plural files. For example, the specifying unit 22may specify a linkage function corresponding to an aspect of the touchof the pointer onto the screen. In this case, in the linkage functionmanagement table, a combination of file formats, a selecting method(e.g., a touching aspect), and a linkage function are associated witheach other. The specifying unit 22 refers to the linkage functionmanagement table and specifies a linkage function associated with acombination of formats of selected files and a selecting method (atouching aspect). For example, a different linkage function isassociated with each selecting method.

This process will be described in detail with reference to FIG. 3. Forexample, when the user performs a tap operation on the images 26 and 28with the pointer (that is, when the user touches the images 26 and 28with the pointer on the screen 24 and immediately separates the pointerfrom the screen 24), the specifying unit 22 specifies a linkage functionthat is associated with the combination of the document format and theimage format and that is associated with the tap operation in thelinkage function management table.

In addition, when the user presses the images 26 and 28 with the pointerfor a long time (that is, when the user touches the images 26 and 28with the pointer on the screen 24 and holds the touching state for apredetermined time), the specifying unit 22 specifies a linkage functionthat is associated with the combination of the document format and theimage format and that is associated with the long press operation in thelinkage function management table.

In addition, when plural images are selected by the dragging anddropping operation, the specifying unit 22 specifies a linkage functionthat is associated with the combination of the formats of the pluraldesignated files and that is associated with the dragging and droppingoperation.

In addition, when plural files are selected by voice input, thespecifying unit 22 specifies a linkage function associated with thecombination of the formats of the plural selected files and associatedwith the voice input method.

According to Modification 5, since a linkage function corresponding tothe method of selecting files is specified, information on a differentlinkage function is displayed according to the selecting method, eventhough files selected as objects to be linked are the same.

(Modification 6)

In Modification 6, when an image associated with a file is superimposedon an image associated with another file for a predetermined or longertime, the specifying unit 22 identifies the other file as a file to belinked. In the example illustrated in FIG. 3, when the user moves theimage 26 to the image 28 and superimposes the image 26 on the image 28for the predetermined or longer time, the specifying unit 22 identifiesthe image file C associated with the image 28 as a file to be linked.When the length of the superimposing time is shorter than thepredetermined time, the specifying unit 22 does not identify the imagefile C associated with the image 28 as a file to be linked.

As another example, when the user selects the image 26, then traces overthe screen 24 from the image 26 to the image 28 with the pointer, andselects the image 28 for the predetermined or longer time, thespecifying unit 22 may identify the image file C associated with theimage 28 as a file to be linked. When the length of the time for whichthe image 28 is selected is shorter than the predetermined time, thespecifying unit 22 does not identify the image file C associated withthe image 28 as a file to be linked.

According to Modification 6, when the length of the time for which animage is superimposed or selected is shorter than the predeterminedtime, the file associated with the image which is the destination of thesuperimposition or the selected image is not identified as a file to belinked. Thus, a file which is not intended by the user is prevented frombeing identified as a file to be linked. For example, in a case wherethe user moves the image 26 or traces over the screen 24 from the image26 to the image 28, and an image associated with another file isdisplayed between the images 26 and 28, the image 26 may come into acontact with the image associated with the other file during themovement of the image 26 or the user may trace over the image associatedwith the other file during the tracing operation. In this case, theother file is identified as a file to be linked. To the contrary,according to Modification 6, when the length of the contacting time orthe selecting time during the tracing operation is shorter than thepredetermined time, the other file is not identified as a file to belinked, so that the other file is prevented from being identified as afile to be linked against the user's intention.

(Modification 7)

When a linkage function associated with a combination of formats offiles selected by the user is not registered in the linkage functionmanagement table, the specifying unit 22 determines that the usablelinkage function is not registered. In this case, the controller 20displays a message indicating that the usable linkage function is notregistered, on the UI unit 18. Even in this case, the linkage functionmay become usable according to, for example, an updating status ofsoftware, installation or not of software, and an execution status of aprocess by software. For example, when new software is installed in theterminal device 10 or when new software provided by, for example, theserver becomes usable by the user, a linkage function which is unusablein the past may become usable. In this case, the specifying unit 22specifies the linkage function that becomes usable.

(Modification 8)

In Modification 8, the specifying unit 22 specifies a linkage functioncorresponding to names of plural files (file names) selected as objectsto be linked. In the linkage function management table according toModification 8, a combination of file names and a linkage function areassociated with each other. The specifying unit 22 refers to the linkagefunction management table and specifies a linkage function associatedwith a combination of names of selected files (file names).

Further, the specifying unit 22 specifies a file to which a content isadded, based on a name of a file selected as an object to be linked. Forexample, when a name of a selected file (file name) includes a characterstring suggesting a file for integrating data (e.g., a file assumed orpredicted to incorporate a content of other data), such as “ledger,”“integration,” “management,” “statistics,” “graph,” “table,” or “list,”the specifying unit 22 identifies the file as a file to which a contentis added (corresponding to a second file). Further, the specifying unit22 identifies a file having a file name including no character stringfor the integration or a file having a file name including a characterstring suggesting a file for providing content (material), as a file(corresponding to a first file) containing content (material) to beadded. For example, a file having a file name including a characterstring such as “receipt,” “slip,” “personal data,” or “device data” doesnot correspond to a file for the integration and is determined tocorrespond to a file for providing a content (material).

For example, in a case where document files A1 and A2 are selected asfiles to be linked, the document file A1 has a file name including thecharacter string for the integration, and the document file A2 has afile name including the character string for providing a materialwithout including the character string for the integration, thespecifying unit 22 specifies a linkage function of, for example,inputting, copying, and performing a statistical process from thedocument file A2 for providing a material into the document A1 for theintegration, as a preferential linkage function. The controller 20displays the preferential linkage function in preference to otherlinkage functions on the UI unit 18.

In addition, plural modifications among Modifications 1 to 8 describedabove may be combined with each other.

(Example of Execution of Linkage Function)

Hereinafter, an example of an execution of a linkage function will bedescribed. FIG. 14 illustrates Execution Example 1. For example, whentwo document files are selected as files to be linked and the “functionof inserting a document into another document” (the function ofintegrating (combining) documents with each other) is executed, thedocument application is activated, and a document 48 represented by onedocument file incorporates a document 50 represented by the otherdocument file. The documents 48 and 50 include, for example, characterstrings. In addition, the documents 48 and 50 may include, for example,tables, images, or videos. The document 50 is the entire documentrepresented by the other document file or a part of the documentrepresented by the other document file. As a result of the execution ofthe linkage function, a new document file representing the state wherethe document 50 is inserted into the document 48 may be generated, orthe document 50 is reflected in the document file representing thedocument 48 so that the document file representing the document 48 maybe updated.

FIG. 15 illustrates Execution Example 2. For example, when a documentfile and a table file are selected as files to be linked and the“function of inserting a table into a document” is executed, thedocument application and the spreadsheet application are activated, anda table 54 represented by the table file is inserted into a document 52represented by the document file. The table 54 is the entire tablerepresented by the table file or a part of the table represented by thetable file. In addition, when the table file includes a graph, the graphmay be inserted into the document 52. As a result of the execution ofthe linkage function, a new document file representing the state wherethe table 54 is inserted into the document 52 may be generated, or thetable 54 is inserted into the document file representing the document 52and the document file may be updated.

FIG. 16 illustrates Execution Example 3. For example, when a documentfile and an image file are selected as files to be linked and the“function of inserting an image into a document” is executed, thedocument application and the image application are activated, and animage 58 represented by the image file is inserted into a document 56represented by the document file. The image 58 is the entire imagerepresented by the image file or a part of the image represented by theimage file. As a result of the execution of the linkage function, a newdocument file representing the state where the image 58 is inserted intothe document 56 may be generated, or the image 58 is inserted into thedocument file representing the document 56 and the document file may beupdated.

FIG. 17 illustrates Execution Example 4. For example, when a documentfile and an image file are selected as files to be linked and the“function of superimposing a document on an image” is executed, thedocument application and the image application are activated, and adocument 62 represented by the document file is superimposed on an image60 represented by the image file. At this time, the image 60 itself isnot processed, and the document 62 is superimposed on the image 60. Forexample, when the document 62 on the image 60 is deleted, the originalimage 60 is obtained. In addition, when the image 60 itself may beprocessed, the document 62 may be embedded in the image 60. The document62 is the entire document represented by the document file or a part ofthe document represented by the document file. As a result of theexecution of the linkage function, a new image file representing thestate where the document 62 is superimposed on the image 60 may begenerated, or the document 62 is superimposed on the image filerepresenting the image 60 and the image file may be updated.

FIG. 18 illustrates Execution Example 5. In the execution examplesdescribed above, two files are selected as files to be linked. However,three or more files may be selected as files to be linked. In this case,a linkage function associated with the three or more files is executed.In Execution Example 5, for example, a document file, an image file, anda table file are selected as files to be linked, and a “function ofinserting an image and a table into a document” is executed. In thiscase, the document application, the spreadsheet application, and theimage application are activated, and an image 66 represented by theimage file and a graph 68 represented by the table file are insertedinto a document 64 represented by the document file. The image 66 is theentire image represented by the image file or a part of the imagerepresented by the image file. The graph 68 is the entire graphrepresented by the table file or a part of the graph represented by thetable file. In addition, when the table file includes a table, the tablemay be inserted into the document 64. In a case where four or more filesare selected as files to be linked as well, the same process asdescribed above is executed.

As an execution example other than the execution examples describedabove, when a document file and a video file are designated as files tobe linked, a video represented by the video file may be inserted into adocument represented by the document file. When the document file is afile into which a video cannot be inserted, one or plural frames (stillimages) in the video may be inserted into the document.

In addition, when a document file and a music file are designated asfiles to be linked, music represented by the music file may be insertedinto a document represented by the document file. When the document fileis a file into which music cannot be inserted, a character string suchas a title of the music may be inserted into the document.

In addition, when a video file and a music file are designated as filesto be linked, music represented by the music file may be inserted into avideo represented by the video file.

In addition, in the execution examples described above, a position in acontent (e.g., a document, table, image, video or music) where anothercontent is inserted may be designated by the user or may be determinedin advance. The position may be changed by the user after the insertionof the content. An editing function which is executable for the insertedcontent depends on the function of software used.

The exemplary embodiments and modification described above may also beapplied when an automatic execution process by the robotics processautomation (RPA) is set. For example, when formats of plural filesdesignated by a setting person, a combination of the plural fileformats, and a linkage function associated with the combination arestored as setting contents, and a process is executed according to thesetting contents. Examples of the RPA include a routine process such asdata input or a job executable by a combination of plural pieces ofapplication software, a process such as data collection or analysis, anda process of conducting learning and making a decision based on data.

The terminal device 10 is implemented by, for example, a cooperation ofhardware and software. Specifically, the terminal device 10 includes oneprocessor or plural processors such as a CPU (not illustrated). Thefunction of each unit of the terminal device 10 is implemented in themanner that one or plural processors read and execute a program storedin a storage device (not illustrated). The program is stored in thestorage device via a recording medium such as a CD or a DVD, or acommunication path such as a network. As another example, each unit ofthe terminal device 10 may be implemented by, for example, a hardwareresource such as a processor, an electronic circuit or an applicationspecific integrated circuit (ASIC). For the implementation, a devicesuch as a memory may be used. As yet another example, each unit of theterminal device 10 may be implemented by, for example, a digital signalprocessor (DSP) or a field programmable gate array (FPGA).

The foregoing description of the exemplary embodiments of the presentinvention has been provided for the purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Obviously, many modificationsand variations will be apparent to practitioners skilled in the art. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, therebyenabling others skilled in the art to understand the invention forvarious embodiments and with the various modifications as are suited tothe particular use contemplated. It is intended that the scope of theinvention be defined by the following claims and their equivalents.

What is claimed is:
 1. An information processing device comprising: acontroller that controls a notification of a linkage functioncorresponding to a plurality of selected files.
 2. The informationprocessing device according to claim 1, wherein the controller controlsthe notification of the linkage function corresponding to an order ofselecting the plurality of selected files.
 3. The information processingdevice according to claim 1, wherein when portions in images associatedwith the selected files are selected, the controller controls thenotification of the linkage function corresponding to the selectedportions.
 4. The information processing device according to claim 3,wherein the controller controls the notification of the linkage functioncorresponding to a combination of the plurality of selected portions. 5.The information processing device according to claim 1, wherein thelinkage function is a function which is to be executed on the selectedfiles.
 6. The information processing device according to claim 5,wherein the linkage function is a function of adding informationincluded in a first file among the plurality of selected files to asecond file.
 7. An information processing method comprising: controllinga notification of a linkage function corresponding to a plurality ofselected files.
 8. The information processing method according to claim7, wherein the notification of the linkage function is controlledcorresponding to an order of selecting the plurality of selected files.9. The information processing method according to claim 7, wherein whenportions in images associated with the selected files are selected, thenotification of the linkage function is controlled corresponding to theselected portions.
 10. The information processing method according toclaim 9, wherein the notification of the linkage function is controlledcorresponding to a combination of the plurality of selected portions.11. A non-transitory computer readable medium storing a program causinga computer to execute information processing, the information processingcomprising: controlling a notification of a linkage functioncorresponding to a plurality of selected files.
 12. The informationprocessing according to claim 11, wherein the notification of thelinkage function is controlled corresponding to an order of selectingthe plurality of selected files.
 13. The information processingaccording to claim 11, wherein when portions in images associated withthe selected files are selected, the notification of the linkagefunction is controlled corresponding to the selected portions.
 14. Theinformation processing according to claim 13, wherein the notificationof the linkage function is controlled corresponding to a combination ofthe plurality of selected portions.